import * as React from 'react'; import { Button, Flex, TextField, SelectField, SwitchField, SwitchFieldProps, } from '@aws-amplify/ui-react'; export interface SwitchPropControlsProps extends SwitchFieldProps { setThumbColor: ( value: React.SetStateAction ) => void; setTrackColor: ( value: React.SetStateAction ) => void; setTrackCheckedColor: ( value: React.SetStateAction ) => void; setIsDisabled: ( value: React.SetStateAction ) => void; setSize: (value: React.SetStateAction) => void; setLabel: (value: React.SetStateAction) => void; setIsChecked: ( value: React.SetStateAction ) => void; setLabelPosition: ( value: React.SetStateAction ) => void; } interface SwitchPropControlsInterface { (props: SwitchPropControlsProps): JSX.Element; } export const SwitchPropControls: SwitchPropControlsInterface = ({ thumbColor, setThumbColor, trackColor, setTrackColor, trackCheckedColor, setTrackCheckedColor, isDisabled, setIsDisabled, size, setSize, label, setLabel, labelPosition, setLabelPosition, isChecked, setIsChecked, }) => { return ( { setThumbColor(event.target.value); }} label="thumbColor" /> { setTrackColor(event.target.value); }} label="trackColor" /> { setTrackCheckedColor(event.target.value); }} label="trackCheckedColor" /> setSize(event.target.value as SwitchFieldProps['size']) } label="size" > { setLabel(event.target.value); }} label="label" /> setLabelPosition( event.target.value as SwitchFieldProps['labelPosition'] ) } label="labelPosition" > { setIsDisabled(!isDisabled); }} label="isDisabled" /> { setIsChecked(!isChecked); }} label="isChecked" /> ); };